package com.xq.apis;

import com.xq.dto.SysDict.*;
import com.xq.vo.JsonVO;

import java.util.List;

/**
 * 字典管理的接口
 */
public interface SysDictApis {

    /**
     * 增加字典类型
     * @param sysDictInsertDTO
     * @return
     */
    JsonVO<String> insertDict(SysDictInsertDTO sysDictInsertDTO);

    /**
     * 删除字典类型
     * @param dictCode
     * @return
     */
    JsonVO<String> deleteDict(String dictCode);

    /**
     * 更新字典类型
     * @param sysDictUpdateDTO
     * @return
     */
    JsonVO<String> updateDict(SysDictUpdateDTO sysDictUpdateDTO);

    /**
     * 查询出字典类型
     * @param userId
     * @return
     */
    JsonVO<List<SysDictListDTO>> listDict(String userId);

    /**
     * 插入字典数据
     * @param sysDictDataInsertDTO
     * @return
     */
    JsonVO<String> insertDictData(SysDictDataInsertDTO sysDictDataInsertDTO);

    /**
     * 删除字典数据
     * @param dictCode
     * @return
     */
    JsonVO<String> deleteDictData(String dictCode);

    /**
     * 更新字典数据
     * @param sysDictDataUpdateDTO
     * @return
     */
    JsonVO<String> updateDictData(SysDictDataUpdateDTO sysDictDataUpdateDTO);

    /**
     * 列出字典数据
     * @param dictCode
     * @return
     */
    JsonVO<List<SysDictDataListDTO>> listDictData(String dictCode);


}
